stubdom: Backport fix for SIZE_MAX from newlib 1.17.0
authorKeir Fraser <keir.fraser@citrix.com>
Tue, 25 Aug 2009 15:26:02 +0000 (16:26 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Tue, 25 Aug 2009 15:26:02 +0000 (16:26 +0100)
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
stubdom/Makefile
stubdom/newlib-stdint-size_max-fix-from-1.17.0.patch [new file with mode: 0644]

index ce25b05aade02a918c65aa2d2029a02b10d35033..15048f08a18023f91ebde4f549600cc29d89e7f5 100644 (file)
@@ -101,6 +101,7 @@ newlib-$(NEWLIB_VERSION): newlib-$(NEWLIB_VERSION).tar.gz
        tar xzf $<
        patch -d $@ -p0 < newlib.patch
        patch -d $@ -p0 < newlib-chk.patch
+       patch -d $@ -p1 < newlib-stdint-size_max-fix-from-1.17.0.patch
        touch $@
 
 NEWLIB_STAMPFILE=$(CROSS_ROOT)/$(GNU_TARGET_ARCH)-xen-elf/lib/libc.a
diff --git a/stubdom/newlib-stdint-size_max-fix-from-1.17.0.patch b/stubdom/newlib-stdint-size_max-fix-from-1.17.0.patch
new file mode 100644 (file)
index 0000000..1054a07
--- /dev/null
@@ -0,0 +1,16 @@
+--- newlib-1.16.0/newlib/libc/include/stdint.h.orig    2006-08-17 00:39:43.000000000 +0300
++++ newlib-1.16.0/newlib/libc/include/stdint.h 2009-08-25 17:33:23.000000000 +0300
+@@ -348,8 +348,11 @@
+ #endif
+ /* This must match size_t in stddef.h, currently long unsigned int */
+-#define SIZE_MIN (-__STDINT_EXP(LONG_MAX) - 1L)
+-#define SIZE_MAX __STDINT_EXP(LONG_MAX)
++#ifdef __SIZE_MAX__
++#define SIZE_MAX __SIZE_MAX__
++#else
++#define SIZE_MAX (__STDINT_EXP(LONG_MAX) * 2UL + 1)
++#endif
+ /* This must match sig_atomic_t in <signal.h> (currently int) */
+ #define SIG_ATOMIC_MIN (-__STDINT_EXP(INT_MAX) - 1)